package io.kubernetes.client.openapi.models;

import com.google.gson.annotations.SerializedName;
import io.kubernetes.client.fluent.Fluent;
import io.kubernetes.client.fluent.Nested;
import java.lang.String;
import java.lang.Deprecated;
import java.lang.Object;
import java.lang.Boolean;

 /**
  * Generated
  */
public interface V1CustomResourceSubresourcesFluent<A extends io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent<A>> extends io.kubernetes.client.fluent.Fluent<A>{
  
  /**
   * This method has been deprecated, please use method buildScale instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScale getScale();
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScale buildScale();
  public A withScale(io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScale scale);
  public java.lang.Boolean hasScale();
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<A> withNewScale();
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<A> withNewScaleLike(io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScale item);
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<A> editScale();
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<A> editOrNewScale();
  public io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<A> editOrNewScaleLike(io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScale item);
  public java.lang.Object getStatus();
  public A withStatus(java.lang.Object status);
  public java.lang.Boolean hasStatus();
  public interface ScaleNested<N> extends io.kubernetes.client.fluent.Nested<N>,io.kubernetes.client.openapi.models.V1CustomResourceSubresourceScaleFluent<io.kubernetes.client.openapi.models.V1CustomResourceSubresourcesFluent.ScaleNested<N>>{
    public N and();
    public N endScale();
    
  }
  
}